using System;
using System.Collections.Generic;
using System.Text;

namespace GURUCORE.Framework.DataAccess.ORMapping
{
	public sealed class Aggregation
	{
		public static Aggregation Sum = new Aggregation("SUM");
		public static Aggregation Count = new Aggregation("COUNT");
		public static Aggregation CountDistinct = new Aggregation("COUNT","DISTINCT");
		public static Aggregation Max = new Aggregation("MAX");
		public static Aggregation Min = new Aggregation("MIN");
		public static Aggregation Avg = new Aggregation("AVG");

		private string m_sIdentify;
		private string m_sOption;

		private Aggregation(string p_sIdentify, string p_sOption)
		{
			m_sIdentify = p_sIdentify;
			m_sOption = p_sOption;
		}

		private Aggregation(string p_sIdentify)
		{
			m_sIdentify = p_sIdentify;
		}

		public string Identify
		{
			get
			{
				return m_sIdentify;
			}
		}

		public string Option
		{
			get
			{
				return m_sOption;
			}
		}
	}
}
